The present invention relates to devices and methods for restricting access to and use of computer programs, and more particularly to preventing or limiting the use of computer programs based on processor location.
As techniques for storing and transmitting digital information continue to improve, it becomes increasingly convenient to generate and transmit complex computer programs and other large collections of digital data. This has enabled computer program developers and vendors to engage in high volume marketing of computer software through distribution of data storage media such as magnetic and optical discs, and electronically via the internet by allowing customers to download programs to their own computers.
This convenience, however, has increased the risk of unauthorized usage and theft of computer programs and related data. A variety of schemes have been developed to discourage or prevent unauthorized use of computer software. For example, U.S. Pat. No. 5,761,651 (Hasebe et al.) discloses a software charging system capable of controlling access to software based on time and date, credit balance of a user, and a digitally stored key that must be matched by the prospective user. In U.S. Pat. No. 6,044,469 (Horstmann), publishers of electronically distributed software can select software protection measures from among several software-based and hardware-based options.
The selected options are written to a license file attached to the software. When a user attempts to run the software, a protector module reads the license file and executes a code for each software protection option selected.
U.S. Pat. No. 7,035,626 (Luciano, Jr.) is directed to remote gaming and lottery systems accessible using cellular phones. The phones are configured to provide location information, equipped either to use the E-911 location system or GPS data. The caller's location is used to determine his or her jurisdiction, and thus ensure that the gaming activity complies with the gambling laws of that jurisdiction.
While these systems and others like them may are suitable for their intended purposes, there are a variety of applications that are not well served by these systems. For example, licensing and distributorship agreements governing or involving computer programs frequently include territorial restrictions on the use or sale of the computer programs. It would be advantageous to incorporate into the software a “self governing” feature to prevent or limit usage consistent with the territorial restriction. On a smaller scale, where computer programs are developed or tailored to the needs of a specific facility, e.g. a college campus or particular building, there may be contractual and safety reasons for limiting use of the programs to the particular facility. On a smaller scale yet, it may be decided to limit the usage and operability of particular software to a “territory” defined by a particular computer, or to the vicinity of one or more permitted users, in which case the “territory” may be movable.